1. Кортежи.
* Ответ (Лекция 1): Неизменяемая последовательность элементов, заключенных в круглые скобки ().
* Свойства:
* Упорядочены.
* Элементы могут быть разных типов.
* Нельзя изменять после создания (нельзя добавить, удалить, изменить элементы).
* Примеры:
t = (1, "hello", 3.14)
2. Буфер обмена.
* Ответ (Лекция 1): Механизм, используемый для обмена значениями между переменными.
* Суть: Временная переменная (buf) используется для временного хранения значения, чтобы избежать потери данных при обмене.
* Пример (Лекция 1):
x = 3
y = 5
buf = x # Буфер
x = y
y = buf
3. Рекуррентные формулы.
* Ответ (Лекция 1): Формулы, определяющие каждый член последовательности через предыдущие.
* Примеры:
* a_n = a_{n-1} + n (суммирование натуральных чисел)
* f_n = f_{n-1} + f_{n-2} (числа Фибоначчи)
* x, y, z = x+y, x*y, x**y (Пример из лекции, перенос данных, модификация).
4. Однострочник для условий.
* Ответ (Лекция 2): Компактная форма записи условного выражения if/else в одну строку.
* Синтаксис: значение_если_true if условие else значение_если_false
* Пример (Лекция 2):
a = -5
print("положительное или ноль" if a >= 0 else "отрицательное")
5. Однострочник для циклов (списочное включение).
* Ответ (Лекция 1): Способ создания списков (или других коллекций) в одну строку, заменяющий цикл for.
* Синтаксис: [выражение for элемент in итерируемый_объект]
* Пример (Лекция 1):
sq = [x**2 for x in range(10)] # список квадратов чисел от 0 до 9
6. Однострочник для циклов с условием (списочное включение).
* Ответ (Лекция 1): Расширение списочного включения с условием (if) для фильтрации элементов.
* Синтаксис: [выражение for элемент in итерируемый_объект if условие]
* Пример (Лекция 1):
even_sq = [x**2 for x in range(10) if x % 2 == 0] # квадраты четных чисел
7. Что такое список?
* Ответ (Лекция 1): Упорядоченная, изменяемая последовательность элементов.
* Свойства:
* Элементы могут быть разных типов.
* Можно добавлять, удалять и изменять элементы.
* Используется [] для создания и доступа по индексу.
* Пример:
my_list = [1, "abc", 3.14]
8. Что такое множество? Операции над множествами.
* Ответ (Лекция 2): Неупорядоченная коллекция уникальных элементов.
* Свойства:
* Элементы не повторяются.
* Неупорядочены (порядок не важен).
* Используются {} для создания.
* Операции:
* | (Объединение): a | b - все элементы из a и b.
* & (Пересечение): a & b - элементы, общие для a и b.
* - (Разность): a - b - элементы из a, которых нет в b.
* ^ (Симметричная разность): a ^ b - элементы, которые есть только в a или только в b.
* Пример (Лекция 2):
a = {1, 2, 3}
b = {3, 4, 5}
print(a & b) # Выведет {3}
9. Программы с условиями без if и действиями, соединенными and и or.
* Ответ (Лекция 3): Хотя if/else — стандартный способ, можно использовать логические операторы and и or для кратких условных конструкций.
* Как это работает:
* условие and действие: действие выполняется, если условие истинно.
* условие or действие: действие выполняется, если условие ложно.
* Пример (но это не всегда рекомендуется):
a = 5
(a > 0) and print("Положительное")
if/else для сложных условий.10. Кванторы.
* Ответ (Лекция 13): Логические операторы, которые позволяют проверить свойства для всех или для хотя бы одного элемента коллекции.
* Виды:
* all(iterable): Возвращает True, если все элементы iterable истинны.
* any(iterable): Возвращает True, если хотя бы один элемент iterable истинен.
* Пример (Лекция 1):
T = [36, 36, 36, 40, 36]
if (T > 37).all():
print("Все больны")
elif (T > 37).any():
print("Есть больной")
11. Функции библиотеки itertools.
* Ответ (Лекция 2): Библиотека, предоставляющая эффективные итераторы для работы с последовательностями.
* Полезные функции (примеры):
* permutations(iterable, r=None): Генерация всех перестановок элементов.
* product(*iterables, repeat=1): Декартово произведение (комбинация всех элементов из нескольких итерируемых объектов).
* Пример (Лекция 2):
from itertools import permutations
for p in permutations("abc", 3):
print(p)
from itertools import product
for p in product("abc", repeat=2):
print(p)